草庐IT

C++ std::regex 多行语法

全部标签

php - 这个 php 语法有效吗? $类-> {'something' }()

我在阅读某个代码示例时,注意到我不熟悉的语法。$response=$controller->{'home'}();这是一个有效的php语法吗? 最佳答案 是的。$controller->{'home'}//sameas$controller->home//usedtoaccessaproperty和$controller->{'home'}()//sameas$controller->home()//usedtocallamethod主要好处是,通过调用->{stuff},您可以访问具有不同(或奇怪)名称的属性。例子:$a=news

java - boolean 查询/表达式到具体语法树

我正在创建一个允许boolean表达式的搜索表单,例如:“fooANDbar”或“fooANDNOTbar”。有没有适用于PHP、Ruby或Java的库可以将boolean表达式转换为具体的语法树?(我可以编写自己的词法分析器/解析器,但我宁愿使用经过试验和测试的东西)编辑:澄清一下,我不是在解析心律失常的表达。它将用于解析允许boolean运算符的全文查询。 最佳答案 我推荐Treetop.它是一种为您的PEG(ParsingExpressionGrammar)生成解析器的迷你语言。它比LALR文法更容易使用,并且比递归下降解析器

php - 有没有办法让 PHP 在不执行 SQL 语法的情况下验证它?

我想构建一个PHP脚本来验证SQL查询,但不执行它。它不仅应该验证语法,而且如果可能的话,还应该让您知道查询是否可以在给定查询中的命令的情况下执行。这是我希望它执行的操作的伪代码:是这样的。我希望它在不执行查询的情况下模拟查询。这就是我想要的,但我在这上面找不到任何东西。我们不希望执行查询的一个例子是,如果查询向数据库添加了一些东西。我们只是希望它在不修改数据库的情况下模拟它。任何链接或示例将不胜感激! 最佳答案 从MySQL5.6.3开始,您可以对大多数查询使用EXPLAIN我做了这个,效果很好:functioncheckMySq

php - REGEX 获取注释标签之间的字符串 (/* string */)

我需要获取/**/注释标记之间的字符串。我正在尝试解析一个文件,并只获取其中注释标签之间的字符串。我是使用正则表达式的新手。所以任何建议将不胜感激。我已经尝试了一些,但都没有用。示例字符串将是。是的,在/*之后和*/之前有一个换行符/*CommentHereCommentHere*/ 最佳答案 你没有说你使用的是什么语言,但是这个正则表达式将适用于java(不需要转义/):(?s)/\*(.*?)\*/第1组(即\1)有您要查找的内容 关于php-REGEX获取注释标签之间的字符串(/*

php - 如何在 PHP 中使用 RegEx 替换所有十六进制?

所以我一直在研究正则表达式,我的friend向我提出挑战,要求我编写一个脚本来替换字符串中的所有十六进制。他给了我一个混合了不同字符的大文件,当然还有一些十六进制字符串。每次出现的十六进制都以\x开头,例如:\x55。我觉得这很容易,所以我在一些在线正则表达式测试器上尝试了这个模式:/\\x([a-fA-F0-9]{2})/它工作得很好。但是,当我将它放入一些PHP代码中时,它根本无法替换它。任何人都可以在我出错的地方向我指出正确的方向吗?这是我的代码:$toDecode=file_get_contents('hex.txt');$pattern="/\\x(\w{2})/";$rep

PHP Regex匹配最后一次出现的字符串

我的字符串是$text1='A373R12345'我想找到此字符串最后一次出现的非数字编号。所以我使用这个正则表达式^(.*)[^0-9]([^-]*)然后我得到了这个结果:1.A3732.12345但我的预期结果是:1.A373R(它有'R')2.12345另一个例子是$text1='A373R+12345'然后我得到了这个结果:1.A373R2.12345但我的预期结果是:1.A373R+(它有'+')2.12345我要包含最后一个无数字的数字!!请帮忙!!谢谢!! 最佳答案 $text1='A373R12345';preg_m

php - 语法错误,意外 'endforeach'

我似乎找不到语法错误。这是有问题的代码:'>'>'>'>/wp-content/uploads/2013/08/header_image.png"alt='Serviceimage'/>'>在过去的20分钟里,我一直盯着这段代码看,但似乎没有发现它。如果有人能指出,我将不胜感激。 最佳答案 如果您没有打开“短标签”,则错误出现在上面示例的第26行:应该是 关于php-语法错误,意外'endforeach',我们在StackOverflow上找到一个类似的问题:

nginx - PHP 语法错误,意外 '['

我以前从未发生过这种情况,但我们开始吧:有什么想法吗?运行php-fpm5.3Ubuntu12.04(精确穿山甲)看起来好像评论不起作用... 最佳答案 像这样使用[]作为数组只适用于PHP5.4及更高版本。SeePHP:Arrays对于PHP5.3,您将不得不使用旧的数组语法。这会起作用:Route::get('/',array('as'=>'default.index','uses'=>'DefaultController@index')); 关于nginx-PHP语法错误,意外'[

php - 如何使用 RegEx 检测用户电子邮件是否为 hotmail 和实时

我正在尝试检测用户的电子邮件是hotmail还是live地址,如果是则回显错误。这是我尝试过的:if((preg_match('[a-zA-Z0-9_\.+]+@(live|hotmail)(\.[a-z]{2,3}){1,2}'))){echo"Wedonotaccepthotmailandlive";}它不起作用。我做错了什么? 最佳答案 鉴于您的唯一目的是检查电子邮件是用于live还是hotmail,不值得将正则表达式复杂化,只需执行以下操作即可:--更新--正如上面的评论所指出的,您错过了preg_match()的第二个参数

regex - 如何将 www 放在 htaccess 中的 wordpress 站点 url 前面?

我有一个像http://example.com/这样访问的wordpress网站但我的客户希望像http://www.example.com/这样访问它我正在寻找此代码作为解决方案#BEGINWordPressRewriteEngineOnRewriteBase/RewriteRule^index\.php$-[L]RewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_FILENAME}!-dRewriteRule./index.php[L]#ENDWordPressRewriteEngineOnRewriteCond%{HTTP_